The present invention relates to techniques for manipulating objects in user interfaces and, more specifically, to techniques for enhancing “drag-and-drop” functionality in such interfaces.
The ability to select and move, i.e., “drag-and-drop,” objects in a user interface has been around for some time. Recently, there has been a resurgence of interest in this functionality with software developers making it available in a variety of computing contexts including, for example, web applications. However, while it is a popular and intuitively appealing feature for users, drag-and-drop has its shortcomings.
For example, dragging an object to a “drop target” (i.e., another object with which the user wishes to associate the first object) in a remote part of the interface can often require multiple gestures with the relevant control device (e.g., mouse or touchpad); an awkward and often irritating process. When the desired drop target is part of a list and is currently off screen, the user must wait and hold the object while the list slowly scrolls to the target. In addition, the relatively small size of some drop targets and their proximity to other drop targets increase the likelihood that a dragged object may be dropped on the wrong target. These issues are exacerbated further by today's increasingly larger displays.
It is therefore desirable to provide mechanisms which improve the usability of the drag-and-drop functionality.